home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / ADV350.ZIP / getin.old < prev    next >
Text File  |  1990-11-16  |  1KB  |  49 lines

  1.       SUBROUTINE GETIN(WORD1,WORD1X,WORD2,WORD2X)
  2.       
  3. C  GET A COMMAND FROM THE ADVENTURER.  SNARF OUT THE FIRST WORD, PAD IT WITH
  4. C  BLANKS, AND RETURN IT IN WORD1.  CHARS 5 THRU 8 ARE RETURNED IN WORD1X, IN
  5. C  CASE WE NEED TO PRINT OUT THE WHOLE WORD IN AN ERROR MESSAGE.  ANY NUMBER OF
  6. C  BLANKS MAY FOLLOW THE WORD.  IF A SECOND WORD APPEARS, IT IS RETURNED IN
  7. C  WORD2 (CHARS 5 THRU 8 IN WORD2X), ELSE WORD2 IS SET TO ZERO.
  8.  
  9.       IMPLICIT INTEGER*4 (A-Z)
  10. C     INTEGER*2 ASCVAR
  11.       LOGICAL BLKLIN
  12.       LOGICAL*1 FRST(20)
  13.       COMMON /BLKCOM/ BLKLIN
  14.       
  15.       IF(BLKLIN) WRITE(*,1)
  16.     1 FORMAT()
  17.     2 ACCEPT 3,K,FRST
  18.     3 FORMAT(Q,20A1)
  19.       ST1=0
  20.       ST2=1
  21.       IX1=0
  22.       IX2=0
  23.       I=0
  24.    10 I=I+1
  25.       ST1=ST1+1
  26.       IF(I.GT.20) GOTO 2
  27.       IF(FRST(I).EQ.' ') GOTO 10
  28.    15 IX1=IX1+1
  29.       I=I+1
  30.       IF(I.GT.20) GOTO 500
  31.       IF(FRST(I).NE.' ') GOTO 15
  32.    20 I=I+1
  33.       IF(I.GT.20) GOTO 500
  34.       IF(FRST(I).EQ.' ') GOTO 20
  35.       ST2=I
  36.    25 IX2=IX2+1
  37.       I=I+1
  38.       IF(I.GT.20) GOTO 500
  39.       IF(FRST(I).NE.' ') GOTO 25
  40.   500 IX1=MIN0(8,IX1)
  41.       IX2=MIN0(8,IX2)
  42.       DECODE(IX1,99,FRST(ST1)) WORD1,WORD1X
  43.    99 FORMAT(2A4)
  44.       WORD2=0
  45.       IF(IX2.EQ.0) RETURN
  46.       DECODE(IX2,99,FRST(ST2)) WORD2,WORD2X
  47.       RETURN
  48.       END
  49.